# 以写入模式打开文件
# w 会先清空文件的内容
fw = open('04.txt', mode='w', encoding='utf-8')

# 写入数据
fw.write('linux\n')
fw.write('NSD\n')

# 关闭文件
fw.close()

# a 追加写入模式打开文件
fw = open('04.txt', mode='a', encoding='utf-8')
fw.write('linux\n')
fw.write('NSD\n')
fw.close()

# 多行写入
fw = open('05.txt', mode='w', encoding='utf-8')
lines = ['name1\n', 'name2\n', 'name3\n']
fw.writelines(lines)
fw.close()

# 二进制写入
fw = open('05.txt', mode='bw', encoding='utf-8')
lines = ['name1\n', 'name2\n', 'name3\n']
fw.writelines(lines)
fw.close()

# 模拟cp命令
fr = open('/home/student/Desktop/page.sh', mode='rb', encoding='utf-8')
fw = open('07.sh', mode='wb', encoding='utf-8')
# 循环读取，每次4K
while True:
    data = fr.read(4096)
    if not data:
        break
    # 不为空则写入目标文件    
    fw.write(data)
fr.close()
fw.close()

